package vwg.na.vwm.rh.motorsdk.modelo.procesos.daoimpl;

import org.springframework.stereotype.Repository;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;

import vwg.na.vwm.rh.motorsdk.modelo.procesos.IdeaProceso;
import vwg.na.vwm.rh.motorsdk.modelo.procesos.dao.IdeIdeaDivisasDAO;
import vwg.na.vwm.rh.motorsdk.modelo.procesos.entidadesgrales.IdeIdeaDivisas;
import vwg.na.vwm.rh.rhmotor.modelo.dao.GenericDAO;

@Repository
public class IdeIdeaDivisasDAOImpl extends GenericDAO<IdeIdeaDivisas> implements
	IdeIdeaDivisasDAO {

    @Override
    @Transactional(readOnly = true, propagation = Propagation.REQUIRED)
    public IdeIdeaDivisas getDivisaByIdea(IdeaProceso ideaProceso) {
	return ((IdeIdeaDivisas) getHibernateTemplate().find(
		"FROM IdeIdeaDivisas as i "
		+ "LEFT JOIN FETCH i.ideDivisa as iDivisa "
		+ "WHERE i.ideaProceso = ? ", ideaProceso).get(0));
    }

}
